package com.smart.community.user.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.smart.community.user.entity.RolePermission;

import java.util.List;

/**
 * 角色权限关联服务接口
 * 
 * @author Wu.Liang
 * @since 2024-12-21
 */
public interface RolePermissionService extends IService<RolePermission> {

    /**
     * 根据角色ID查询权限ID列表
     * 
     * @param roleId 角色ID
     * @return 权限ID列表
     * @throws Exception 统一异常
     */
    List<Long> getPermissionIdsByRoleId(Long roleId) throws Exception;

    /**
     * 批量插入角色权限关联
     * 
     * @param rolePermissions 角色权限关联列表
     * @throws Exception 统一异常
     */
    void batchInsert(List<RolePermission> rolePermissions) throws Exception;

    /**
     * 根据角色ID删除权限关联
     * 
     * @param roleId 角色ID
     * @throws Exception 统一异常
     */
    void deleteByRoleId(Long roleId) throws Exception;
} 